diff --git a/system/database/DB_utility.php b/system/database/DB_utility.php
index ecfda52..9eac2ec 100644
--- a/system/database/DB_utility.php
+++ b/system/database/DB_utility.php
@@ -316,7 +316,7 @@
 	 * Database Backup
 	 *
 	 * @param	array	$params
-	 * @return	mixed
+	 * @return	string
 	 */
 	public function backup($params = array())
 	{
@@ -417,7 +417,7 @@
 			return gzencode($this->_backup($prefs));
 		}
 
-		return;
+		return '';
 	}
 
 }
diff --git a/system/helpers/download_helper.php b/system/helpers/download_helper.php
index 2710a4a..95c94a1 100644
--- a/system/helpers/download_helper.php
+++ b/system/helpers/download_helper.php
@@ -59,13 +59,13 @@
 	 * @param	string	filename
 	 * @param	mixed	the data to be downloaded
 	 * @param	bool	whether to try and send the actual file MIME type
-	 * @return	bool
+	 * @return	void
 	 */
 	function force_download($filename = '', $data = '', $set_mime = FALSE)
 	{
 		if ($filename === '' OR $data === '')
 		{
-			return FALSE;
+			return;
 		}
 		elseif ($data === NULL)
 		{
@@ -77,7 +77,7 @@
 			}
 			else
 			{
-				return FALSE;
+				return;
 			}
 		}
 		else
@@ -98,7 +98,7 @@
 				/* If we're going to detect the MIME type,
 				 * we'll need a file extension.
 				 */
-				return FALSE;
+				return;
 			}
 
 			// Load the mime types
@@ -125,7 +125,7 @@
 
 		if ($data === NULL && ($fp = @fopen($filepath, 'rb')) === FALSE)
 		{
-			return FALSE;
+			return;
 		}
 
 		// Clean output buffer
diff --git a/system/libraries/Migration.php b/system/libraries/Migration.php
index f618149..ae36a3b 100644
--- a/system/libraries/Migration.php
+++ b/system/libraries/Migration.php
@@ -421,11 +421,11 @@
 	 * Stores the current schema version
 	 *
 	 * @param	string	$migration	Migration reached
-	 * @return	object	Outputs a report of the migration
+	 * @return	void
 	 */
 	protected function _update_version($migration)
 	{
-		return $this->db->update($this->_migration_table, array(
+		$this->db->update($this->_migration_table, array(
 			'version' => $migration
 		));
 	}
